package com.partner.share.work.mq.config;

import com.partner.share.work.mq.construction.ActiveMQQueueConst;
import com.partner.share.work.mq.construction.ActiveMQTopicConst;
import org.apache.activemq.broker.ConsumerBrokerExchange;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jms.config.JmsListenerContainerFactory;
import org.springframework.jms.config.SimpleJmsListenerContainerFactory;

import javax.jms.ConnectionFactory;

/**
 * 自动配置监听和消息工仓
 * @author pengyangyan
 * @version 1.0.0
 * @date 2019年09月29日 09:45:00
 */
//@Configuration
//public class ActiveMQConfiguration {
//
//    /**
//     * 在Queue模式中，对消息的监听需要对containerFactory进行配置
//     */
//    @Bean(ActiveMQQueueConst.BEAN_NAME_JMSLISTENERCONTAINERFACTORY)
//    public JmsListenerContainerFactory<?> queueJmsListenerContainerFactory(ConnectionFactory connectionFactory){
//        SimpleJmsListenerContainerFactory factory = new SimpleJmsListenerContainerFactory();
//        factory.setConnectionFactory(connectionFactory);
//        factory.setPubSubDomain(false);
//        return factory;
//    }
//
//    /**
//     * 在Topic模式中，对消息的监听需要对containerFactory进行配置
//     */
//    @Bean(ActiveMQTopicConst.BEAN_NAME_JMSLISTENERCONTAINERFACTORY)
//    public JmsListenerContainerFactory<?> topicJmsListenerContainerFactory(ConnectionFactory connectionFactory){
//        SimpleJmsListenerContainerFactory factory = new SimpleJmsListenerContainerFactory();
//        factory.setConnectionFactory(connectionFactory);
//        factory.setPubSubDomain(true);
//        return factory;
//    }
//}
